Skip to content

YOLO 模块总览 - Overview

基于 YOLO 的深度学习推理模块,支持 Detect / Classify / Segment / Pose / Obb 五类任务,后端支持 ONNX、TensorRT、NCNN。导出 ONNX / TensorRT Engine / NCNN 权重时,文件名或元数据中的 family 标识对应下表架构;加载时须与 InferenceType(任务类型)一致。

YOLO 为独立授权项目,Reg和Login接口的FeatureList需要配置YOLO特性才可以激活相关功能

本分类做什么

任务inferenceType典型输出
目标检测 Detect0轴对齐框、类别、置信度
图像分类 Classify1Top-K 类别与分数(无 bbox)
实例分割 Segment2框 + 掩码轮廓 MaskVertices
姿态估计 Pose3人体框 + Keypoints
旋转框 Obb4旋转四边形 + Angle

输入一般为 屏幕区域图像句柄(与 LoadImage 衔接)或 图片路径confidence / iou / topK 等含义见 推理输入参数说明;输出为 PascalCase JSON(见 推理结果JSON说明)。

支持的模型架构

#英文标识 (family)中文常用说法简要说明
1YOLOv3YOLOv3 系列早期 Ultralytics 统一版(如 yolov3u.pt
2YOLOv5YOLOv5 系列经典检测主干(如 yolov5nu.pt
3YOLOv6YOLOv6 系列美团 YOLOv6(如 yolov6n.pt
4YOLOv7YOLOv7 系列WongKinYiu YOLOv7(如 yolov7-tiny.pt
5YOLOv8YOLOv8 系列Ultralytics 主力一代(yolov8n*
6YOLOv9YOLOv9 系列YOLOv9(如 yolov9c.pt
7YOLOv10YOLOv10 系列无 NMS 端到端检测(yolov10n.pt
8YOLO11YOLO11 系列Ultralytics YOLO11(yolo11n*
9YOLO12YOLO12 系列YOLO12 架构(yolo12n.pt 等)
10YOLO26YOLO26 系列新一代 Ultralytics YOLO26(yolo26n*
11YOLO-WorldYOLO-World 系列开放词汇 / 世界模型(如 yolov8s-worldv2.pt
12YOLOEYOLOE 系列高效开放词汇 YOLOE(如 yoloe-11s-seg-pf.pt
13YOLO-MasterYOLO-Master 系列腾讯 YOLO-Master 统一框架

同一 family 下可有 Detect / Classify / Segment / Pose / Obb 等不同任务权重;以导出时的任务后缀与 ModelInfo 中的 InferenceType 为准。


与「图像识别 Match/Find」的差异

对比项YOLO(本分类)图像识别 Match/Find
依据深度学习模型,多类别模板相似度色差扫描
模板权重/加密包用户提供 小图模板
适用类别多、形变光照大固定 UI 图标、模板稳定

选型:UI 固定且可截模板 → Match 往往更轻;多类物体、形变大YOLO


典型流水线

  1. YoloLoadModelExYoloLoadModel 得到 modelHandle(可选传入 类别名称表)。
  2. 可选:YoloSetModelConfigYoloSetModelConfigByKeyYoloGetModelInfo
  3. GetScreenDataPtr / LoadImage 或直接屏幕/文件推理。
  4. 调用对应 YoloDetect* / YoloClassify* / …,解析 推理结果 JSONFreeStringPtr
  5. YoloReleaseModel 释放句柄。

模型类型与设备

modelType:0 TensorRT Engine,1 ONNX,2 NCNN(.bin + .param)。

inferenceType:0 Detect,1 Classify,2 Segment,3 Pose,4 Obb;加载时须与权重任务一致。

inferenceDevice-1 CPU;0+ GPU 索引;不可用时可能回退 CPU(见 ModelInfo 的 ProviderFallbackReason)。

类别名称表(namesLabel):可选;支持文件路径、内联 | 分隔、多行文本;ASCII / UTF-8 / GBK / UTF-16 BOM 自动识别。详见 类别名称表说明


加密包

可使用 YoloEncryptModel 打包分发,运行时 YoloLoadModel 加载。


文档索引

约定与说明

模型加载

接口说明
YoloLoadModel磁盘加密包
YoloLoadModelEx磁盘明文
YoloLoadModelMemory内存加密包
YoloLoadModelMemoryEx内存明文

模型包加解密

接口说明
YoloEncryptModel加密到文件
YoloEncryptModelEx加密到内存
YoloDecryptModel解密到文件
YoloDecryptModelEx解密到内存

模型管理

接口说明
YoloReleaseModel卸载
YoloListModels列表
YoloGetModelInfo元数据
YoloSetModelConfig写配置(JSON 对象)
YoloSetModelConfigByKey写配置(单键)
YoloGetModelConfig读配置

目标检测 Detect

接口输入
YoloDetect屏幕区域
YoloDetectFromPtr图像句柄
YoloDetectFromFile文件路径

图像分类 Classify

接口输入
YoloClassify屏幕区域
YoloClassifyFromPtr图像句柄
YoloClassifyFromFile文件路径

实例分割 Segment

接口输入
YoloSegment屏幕区域
YoloSegmentFromPtr图像句柄
YoloSegmentFromFile文件路径

姿态估计 Pose

接口输入
YoloPose屏幕区域
YoloPoseFromPtr图像句柄
YoloPoseFromFile文件路径

旋转框检测 Obb

接口输入
YoloObb屏幕区域
YoloObbFromPtr图像句柄
YoloObbFromFile文件路径

未在 ola_yolos.def 导出的头文件接口(如 YoloInferYoloWarmup)暂无对外文档页。